package com.zhangtai.modules.vo;

import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.zhangtai.config.LongJsonDeserializer;
import com.zhangtai.config.LongJsonSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;


/**
 * 调班申请表
 *
 * @author chenshun
 * @email sunlightcs@gmail.com
 * @date 2020-12-08 09:58:40
 */
@Data
public class ShiftVo implements Serializable {
	private static final long serialVersionUID = 1L;
			/**
		 * 
		 */
				@TableId
		@JsonDeserialize(using = LongJsonDeserializer.class)
		@JsonSerialize(using = LongJsonSerializer.class)
			private Long id;
	/**
	 * 调班员工oid
	 */
	@JsonDeserialize(using = LongJsonDeserializer.class)
	@JsonSerialize(using = LongJsonSerializer.class)
	@ApiModelProperty(value="调班人oid",required = true)
	@NotNull(message = "调班人oid不能为空")
	private Long shiftOid;
	/**
	 * 被调班员工oid
	 */
	@JsonDeserialize(using = LongJsonDeserializer.class)
	@JsonSerialize(using = LongJsonSerializer.class)
	@ApiModelProperty(value="被调班人oid",required = true)
	@NotNull(message = "被调班人oid不能为空")
	private Long beShiftOid;

			/**
		 * 调班时间
		 */
			@ApiModelProperty(value="调班时间")
			private Date shiftDate;
			/**
		 * 调班班次
		 */
			@ApiModelProperty(value="调班人班次")
			private String frequency;
	/**
	 * 被调班人班次
	 */
	@ApiModelProperty(value="被调班人班次")
	private String beFrequency;
			/**
		 * 原因说明
		 */
			@ApiModelProperty(value="原因说明")
			private String reason;
			/**
		 * 附件url
		 */
			@ApiModelProperty(value="附件url")
			private ArrayList<String> fileUrlList;
			/**
		 * 备注
		 */
			@ApiModelProperty(value="备注")
			private String remark;


	
}
